<template>
  <div>
    <!-- {{$store.state.模块名.字段名}} -->
    getters 的优化
    <br>
    {{token}}
    {{name}}
    <br>
    <!-- <button @click="$store.commit('setToken')">全局触发</button> -->
    <!-- 如果添加了命名空间锁, 那么在调用时就需要加上命名空间路径 -->
    <button @click="setToken">测试辅助函数</button>
  </div>
</template>

<script>
// import {mapMutations as globalMapMutations} from 'vuex'
import {mapMutations, mapGetters} from 'vuex'
console.log(mapMutations);
import {createNamespacedHelpers} from 'vuex'
// 这个函数可以创建基于命名空间的辅助函数, 只需要在调用时以字符串的形式传入空间名称即可
const {mapMutations: userMapMutations} = createNamespacedHelpers('user')
export default {
  computed: {
    ...mapGetters(['token', 'name'])
  },
  methods: {
    // 使用辅助函数时, 如果想要指定特定命名空间,
    // 可以在第一个参数中加上命名空间名称
    // ...mapMutations(['setToken'])
    ...userMapMutations(['setToken'])
  }
}
</script>

<style>

</style>